﻿using System;

namespace Fuse8.ContentManagementFramework.Domain
{
    /// <summary>
    /// Contract for tracking enabled entities
    /// </summary>
    public interface ITrackingEntityObject
    {
        /// <summary>
        /// 
        /// </summary>
        bool IsNew { get; }
        
        /// <summary>
        /// The principal who created
        /// </summary>
        int CreatedBy { get; set; }

        /// <summary>
        /// Date of create
        /// </summary>
        DateTime DateCreated { get; set; }

        /// <summary>
        /// The principal who last updated
        /// </summary>
        int? LastUpdatedBy { get; set; }

        /// <summary>
        /// Date of last update
        /// </summary>
        DateTime? DateLastUpdated { get; set; }
    }
}
